package com.eci.common.asset.kit.vo;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/** 企业微信发送文本请求的数据封装对象*/
@ApiModel
public class WecomRequestVO {
	
	/** 接收消息的成员ID,（多个接收者用‘|’分隔，最多支持1000个）
	 * 	特殊情况：指定为"@all"，则向该企业应用的全部成员发送 */
	@ApiModelProperty(value = "接收消息的成员ID",notes = "多个收件人以‘|’分割")
	@NotBlank
	private String  touser;
	
	/**	指定接收消息的部门ID，（多个接收者用‘|’分隔，最多支持100个 
	 *  当touser为"@all"时忽略本参数*/
	//private String  toparty;
	
	/**	指定接收消息的标签ID，（多个接收者用‘|’分隔，最多支持100个 
	 *  当touser为"@all"时忽略本参数*/
	//private String  totag;
	
	/** 消息类型，此时固定为：text*/
	private String  msgtype = "text";
	
	/**	企业应用的id，整型 */
	@ApiModelProperty("企业应用的id")
	private Integer  agentid ;
	
	@ApiModelProperty(value = "是否使用企业微信中配置好的模板发送",notes = "使用模板发送时，须指定模板ID和语言ID")
	@NotNull
	private Boolean isUseTemplate;
	
	
	//使用模板发送
	
	@ApiModelProperty(value = "模板ID",notes = "使用模板发送时，须指定该值")
	private Integer wecomTemplateId;
	
	@ApiModelProperty(value = "语言ID",notes = "使用模板发送时，须指定该值") 
	private Integer wecomLangId;
	
	@ApiModelProperty(value = "携带JSON数据",notes = "使用模板发送时，须指定该值") 
	private String jsonData;
	
	//不使用模板发送
	
	/**消息内容，最长不超过2048个字节，超过将截断*/
	@ApiModelProperty(value = "消息内容【不使用模板发送时，须指定该值】",notes = "最长不超过2048个字节，超过将截断")
	private String content;
	 
	

	public String getTouser() {
		return touser;
	}

	public void setTouser(String touser) {
		this.touser = touser;
	}

	public String getMsgtype() {
		return msgtype;
	}

	public void setMsgtype(String msgtype) {
		this.msgtype = msgtype;
	}

	public Integer getAgentid() {
		return agentid;
	}

	public void setAgentid(Integer agentid) {
		this.agentid = agentid;
	}

	public String getContent() {
		return content;
	}

	public void setContent(String content) {
		this.content = content;
	}

	public Boolean getIsUseTemplate() {
		return isUseTemplate;
	}

	public void setIsUseTemplate(Boolean isUseTemplate) {
		this.isUseTemplate = isUseTemplate;
	}

	public Integer getWecomTemplateId() {
		return wecomTemplateId;
	}

	public void setWecomTemplateId(Integer wecomTemplateId) {
		this.wecomTemplateId = wecomTemplateId;
	}

	public Integer getWecomLangId() {
		return wecomLangId;
	}

	public void setWecomLangId(Integer wecomLangId) {
		this.wecomLangId = wecomLangId;
	}

	public String getJsonData() {
		return jsonData;
	}

	public void setJsonData(String jsonData) {
		this.jsonData = jsonData;
	}

	
	 
	

}
